package com.emeraldparser.collect;

import java.util.Set;

import com.emeraldparser.collect.Graph.Edge;
import com.emeraldparser.collect.Graph.EdgeMultiset;
import com.google.common.collect.ForwardingMultiset;
import com.google.common.collect.Multiset;

public abstract class AbstractEdgeMultiset<V, E> extends ForwardingMultiset<Edge<V, E>> implements EdgeMultiset<V, E> {

	protected abstract EdgeMultiset<V, E> newEdgeMultiset(Multiset<Edge<V, E>> delegate);

	@Override
	public EdgeMultiset<V, E> from(V source) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public EdgeMultiset<V, E> to(V destination) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public EdgeMultiset<V, E> labelled(E label) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Multiset<V> sources() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Set<V> sourceSet() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Multiset<V> destinations() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Set<V> destinationSet() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Multiset<E> labels() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Set<E> labelSet() {
		// TODO Auto-generated method stub
		return null;
	}

}
